package com.eam.asset.assetApplication.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.eam.common.annotation.Excel;
import com.eam.common.core.domain.BaseEntity;

/**
 * 资产处置申请对象 asset_application
 *
 * @author tzf
 * @date 2023-10-31
 */
public class AssetApplication extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId
    private String id;

    /**
     * 经办人(系统用户id)
     */
    @Excel(name = "经办人(系统用户id)")
    private String operatorId;

    /**
     * 负责人
     */
    @Excel(name = "负责人")
    private String respId;

    /**
     * 申请时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applicationTime;

    /**
     * 申请通过时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请通过时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date passTime;

    /**
     * 资产所属类型
     */
    @Excel(name = "资产所属类型")
    private String assetType;

    /**
     * 资产的名称
     */
    @Excel(name = "资产的名称")
    private String assetName;

    /**
     * 资产的数量
     */
    @Excel(name = "资产的数量")
    private Long assetNumber;

    /**
     * 申请的状态(2表示通过,1表示处理中,0未通过)
     */
    @Excel(name = "申请的状态(2表示通过,1表示处理中,0未通过)")
    private Long applicationStatus;

    /**
     * 申请单位
     */
    @Excel(name = "申请单位")
    private String applicationUnit;

    /**
     * 资产的处置方式(置换,购买)
     */
    @Excel(name = "资产的处置方式(置换,购买)")
    private String disposalMethod;

    /**
     * 资产权证号
     */
    @Excel(name = "资产权证号")
    private String assetWarrantNumber;

    /**
     * 资产金额
     */
    @Excel(name = "资产金额")
    private Long assetAmount;


    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setOperatorId(String operatorId) {
        this.operatorId = operatorId;
    }

    public String getOperatorId() {
        return operatorId;
    }

    public void setRespId(String respId) {
        this.respId = respId;
    }

    public String getRespId() {
        return respId;
    }

    public void setApplicationTime(Date applicationTime) {
        this.applicationTime = applicationTime;
    }

    public Date getApplicationTime() {
        return applicationTime;
    }

    public void setPassTime(Date passTime) {
        this.passTime = passTime;
    }

    public Date getPassTime() {
        return passTime;
    }

    public void setAssetType(String assetType) {
        this.assetType = assetType;
    }

    public String getAssetType() {
        return assetType;
    }

    public void setAssetName(String assetName) {
        this.assetName = assetName;
    }

    public String getAssetName() {
        return assetName;
    }

    public void setAssetNumber(Long assetNumber) {
        this.assetNumber = assetNumber;
    }

    public Long getAssetNumber() {
        return assetNumber;
    }

    public void setApplicationStatus(Long applicationStatus) {
        this.applicationStatus = applicationStatus;
    }

    public Long getApplicationStatus() {
        return applicationStatus;
    }

    public void setApplicationUnit(String applicationUnit) {
        this.applicationUnit = applicationUnit;
    }

    public String getApplicationUnit() {
        return applicationUnit;
    }

    public void setDisposalMethod(String disposalMethod) {
        this.disposalMethod = disposalMethod;
    }

    public String getDisposalMethod() {
        return disposalMethod;
    }

    public void setAssetWarrantNumber(String assetWarrantNumber) {
        this.assetWarrantNumber = assetWarrantNumber;
    }

    public String getAssetWarrantNumber() {
        return assetWarrantNumber;
    }

    public void setAssetAmount(Long assetAmount) {
        this.assetAmount = assetAmount;
    }

    public Long getAssetAmount() {
        return assetAmount;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("operatorId", getOperatorId())
                .append("respId", getRespId())
                .append("applicationTime", getApplicationTime())
                .append("passTime", getPassTime())
                .append("updateTime", getUpdateTime())
                .append("assetType", getAssetType())
                .append("assetName", getAssetName())
                .append("assetNumber", getAssetNumber())
                .append("applicationStatus", getApplicationStatus())
                .append("applicationUnit", getApplicationUnit())
                .append("disposalMethod", getDisposalMethod())
                .append("assetWarrantNumber", getAssetWarrantNumber())
                .append("assetAmount", getAssetAmount())
                .append("remark", getRemark())
                .toString();
    }
}
